package com.ustcinfo.study.scala.r5.hesong

object FirstScala {
    def main(args: Array[String]): Unit = {
            //设定运行的模式和名称
        val sparkConf = new SparkConf().setMaster("local").setAppName("test")
        val sc = new SparkContext(sparkConf)
        //取得数据
        val txtRdd = sc.textFile("src/main/resources/sampleData/programmingGuide")
        txtRdd.filter(x => x.trim().length > 0)//过滤去除无效数据
          .map(x => x.split(" "))//拆分
          .flatMap(x => x)//转换
          .map(x => (x,1))//转换为指定格式
          .reduceByKey(_+_)//合并同单词，并统计
          .map(x => (x._2,x._1))//将key和value值调换位置
          .sortByKey(false)//排序，默认true为升序，设置false为降序
          .take(10)//取得前10个数据
          .foreach(println)//输出


    }
}
